package com.ziyun.erp.modules.invoice.service;

import com.baomidou.mybatisplus.service.IService;
import com.ziyun.erp.modules.invoice.entity.OrderInvoiceRelevancyEntity;
import io.renren.common.utils.PageUtils;
import com.ziyun.erp.modules.invoice.entity.OrderInvoiceEntity;

import java.util.List;
import java.util.Map;

/**
 * 发票信息表
 *
 * @author gaosheng
 * @email 
 * @date 2018-08-25 15:13:13
 */
public interface OrderInvoiceService extends IService<OrderInvoiceEntity> {

    /**
     * 查询登记发票订单列表
     * @param params 查询参数
     * @return
     */
    PageUtils queryPageOrderInvoiceRegisterList(Map<String, Object> params);

    /**
     * 查询发票列表
     * @param params 查询参数
     * @return
     */
    PageUtils queryPageOrderInvoiceList(Map<String, Object> params);

    /**
     * 添加发票信息
     * @param orderInvoice 发票信息
     * @param orderInvoiceRelevancyList 发票关联信息
     * @return
     */
    boolean saveInvoice(OrderInvoiceEntity orderInvoice, List<OrderInvoiceRelevancyEntity> orderInvoiceRelevancyList);

    /**
     * 提交发票信息
     * @param updateMap 修改参数
     * @param oiId 发票ID
     * @return
     */
    boolean sumbitInvoice(Map<String, Object> updateMap, Integer oiId);

    /**
     * 审核发票信息
     * @param updateMap 修改参数
     * @param oiId 发票ID
     * @return
     */
    boolean auditInvoice(Map<String, Object> updateMap, Integer oiId);

    /**
     * 删除发票信息
     * @param updateMap 修改参数
     * @param oiId 发票ID
     * @return
     */
    boolean deleteInvoice(Map<String, Object> updateMap, Integer oiId);


}

